11问答网
所有问题
当前搜索:
c语言 short
C语言
使用printf函数打印出
short
的最大值,最小值
答:
short
int在32位以下的机器是2位,在32及64位以上的机器是4位。long型都是8位。32位能表示的最大值是4G,其中unsign是4G,sign是-2G---2G。现在知道怎么使用printf了吧
c语言
溢出问题
答:
对于正数,反码,补码与原码相同。对于负数,补码是原码的符号位不变,数值部分按位取反再加1。
short
型数据是16位表示最高位是符号位,所以只有15位表示数值,15位000000000000000-111111111111111表示的范围是0-32767,又加上最高位的符号位(第16位),就可以表示-32768-32767 。unsigned short型数据...
C语言
中unsigned
short
int
答:
本来
short
int是-32768~32767,你加上unsigned的之后,负数的部分就都变成正数了,然后使用的都是补码,-1自然就变成最大值了。查查补码和无符号整数的含义你就懂了。
C语言
中long double 与
short
double 分别占几个字节啊?
答:
没有
short
double 只有double和long double 具体看编译器 double一般是8字节,也有6字节和4字节的 比较少见 long double 有16 字节, 12字节,8字节。 其中16字节占大多数。
c语言
问题:要求在不使用强制类型转换的条件下,写一函数将一
short
...
答:
以上代码中
c
为1时,说明是a是负数,而b=b|ffff0000就是给高位补1,将16位
short
型负数的补码转换32位int型负数的补码,因此if(!c)这句中的!应该去掉。
c语言short
型加int型
答:
我把你的程序复制到我的C里运行,是这样输入的:127-9.运行结果:118 127 -9 没出错!!,你很有可能是输入格式不对!! 两个数字之间不能有其他符号,如“,”(除非你的程序是这样的:scanf("%d,%d",&x,&y);),不然的话它会把符号的ASC码当做输入的数字。
C语言
中 unsigned
short
怎么输出
答:
unsigned
short
d ;printf("d = %u\n",d);输出unsigned short ,unsigned int 一般用 %u 像unsigned long 输出的话一般用%lu
一道
c语言
练习题
short
i=-4;printf("%d%o%x%u",&i,&i,&i&i)
答:
short
i=-4;就是i=1111111111111100(2)。%d是按有符号十进制输出,是-4;%o是按八进制无符号型输出,则是1777774;%x是按无符号十六进制输出,就是fff
c
;%u是把1111111111111100当无符号十进制输出,当然就是65532了。
C语言
基本整型的数据范围什么意思
答:
基本整型变量,所占字节数为2,每个字节等于八位二进制数,可以用0和1表示的八位二进制数,2个字节也就是16位二进制。最高位表示正负,所以用0和1组成的16位数字范围为-2的15次方~2的15次方,也就是-32768~32767。因此基本整型变量数据范围是-32768~32767。
c语言
: 为什么会输出65535?
答:
因为你把a定义成了unsigned
short
类型,-1的补码是1111111111111111,把-1赋值给a,而a又因为是unsigned short 类型,从而不能存放负数,所以此时最高位的一不在表示负号,而是代表数值,所以就变成了65535,如果你把a定义为int类型,就会输出-1,注意,在赋值过程中应该避免将一个负数赋给unsigned 的...
棣栭〉
<涓婁竴椤
3
4
5
6
8
7
9
10
11
12
涓嬩竴椤
灏鹃〉
其他人还搜